'''

通过继承和方法重写，子类可以重写父类的方法，从而实现不同的行为。
'''

class Animal:
    def speak(self):
        return "Some generic sound"

class Dog(Animal):
    def speak(self):
        return "Woof!"

class Cat(Animal):
    def speak(self):
        return "Meow!"

# 创建不同类型的对象
animals = [Dog(), Cat()]

# 遍历列表，调用每个对象的 speak 方法
for animal in animals:
    print(animal.speak())
